package com.ssy.lingxi.system.service;

import com.ssy.lingxi.common.response.PageData;
import com.ssy.lingxi.common.response.PageModel;
import com.ssy.lingxi.common.response.Wrapper;
import com.ssy.lingxi.system.dto.request.TemplateParametersAddRequest;
import com.ssy.lingxi.system.dto.request.TemplateParametersDetailsRequest;
import com.ssy.lingxi.system.dto.request.TemplateParametersDeteleRequest;
import com.ssy.lingxi.system.dto.request.TemplateParametersUpdateRequest;
import com.ssy.lingxi.system.dto.response.MessageTemplateTypeAllResponse;
import com.ssy.lingxi.system.entity.TemplateParameters;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
* 短信模板参数业务层
* @author wrc
* @date 2020/6/3
*/
public interface TemplateParametersService {


    /**
    * 短信模板参数列表查询
    * @author wrc
    * @date 2020/6/3
    */
    Wrapper<PageData<TemplateParameters>> messageTemplateList(PageModel request);


    /**
    * 添加模板参数
    * @author wrc
    * @date 2020/6/3
    */
    Wrapper messageTemplateAdd(HttpServletRequest httpServletRequest, TemplateParametersAddRequest request);


    /**
    * 修改模板参数
    * @author wrc
    * @date 2020/6/3
    */
    Wrapper messageTemplateUpdate(TemplateParametersUpdateRequest request);


    /**
    * 删除模板参数
    * @author wrc
    * @date 2020/6/3
    */
    Wrapper messageTemplateDelete(TemplateParametersDeteleRequest request);

    /**
    * 查询短信模板详情
    * @author wrc
    * @date 2020/6/17
    */
    Wrapper<TemplateParameters> messageTemplateDetails(TemplateParametersDetailsRequest request);


    /**
    * 查询短信模板类型列表
    * @author wrc
    * @date 2020/6/17
    */
    Wrapper<List<MessageTemplateTypeAllResponse>> messageTemplateTypeAll();

    /**
     * 清空短信模板
     * @return
     */
    Boolean clearSmsTemplate();
}
